約 5,576,279 件
https://w.atwiki.jp/fujiyan/pages/38.html
(作成中) WebコミックLibraryhttp //web-comi.appspot.com/GAE/JとSlim3で作成してみた、各出版社から配信されているWebコミックをまとめて閲覧できるサイトです。只今、実験運用中… 参考サイト 公式サイト Androidで動く携帯Javaアプリ作成入門 Tech Booster 逆引きAndroid入門 ActivityとView 参考 Android Developers 世界を目指せ!Androidアプリ開発入門 Activityは、画面を表す。 ViewはUIを構成する部品。ActivityにViewを設定することで、画面を構築する。 Viewの構成方法は2つ(静的)レイアウトXMLを記述してコンパイルしたものを設定。お手軽。通常はこっち (動的)Viewオブジェクトを適宜生成して設定。前もって作成するViewが決まらない場合はこっち。 XMLでViewを定義 res/layout以下に.xmlファイルを作成 作成すると、R.layout.[ファイル名]という定数名で、作成したViewを表すIDが定義される(ファイル名がmain_layout.xmlなら、R.layout.main_layoutという定数が定義される)。 定義されたIDをActivity#setContentView()に渡す。 複数のView定義が必要な場合は、その分だけxmlファイルを作れば良い。 画面切り替え 参考 アンドロドロ バックボタンで前画面に戻したい場合はActivity切り替えで実装。バックボタンを押すと、アクティブなActivityに対してfinish()が呼び出され、直前のActivityがアクティブになる。ブラウザの「戻る」感覚だろうから、こっちが通常なんでしょう。 グローバルリソース(カメラ等)の取得/解放は、よほどの事情が無い限り、onResume()/onPause()で行うこと。でも、カメラでよくやるような、SurfaceHolderのsurfaceCreated()/surfaceDestroyed()は、Activity切り替え時のタイミングで呼ばれるっぽいので、ここでカメラの取得/解放を行っても大丈夫っぽい(あやふや)。 Activityを2つ用意するのか、1つのActivity内でViewFlipperを使うかは悩み中。多分、メモリ管理を細かく制御して、OSに負担を掛けないようにするのはActivity2つなんでしょう。次画面のActivity起動時に次画面用のリソースを取得、前画面のリソースを解放とか、onStop()/onRestart()でリソースの一時解放/再取得とか。 ViewFlipperの場合は、全ての画面のリソースをまとめてメモリにロードするんじゃないかと。 アプリケーションの終了 単一Activityの場合はfinish()で良い。 複数Activityの場合は、最後に開始したActivityから順次finish()していき、最後にroot Activityをfinish()させるのが良いと思う。これは、Activityはスタックに詰まれていくことに由来。LIFOでfinish()していく。 多分、ActivityからTaskを終了させる方法は無い。何故なら、Activityは、さまざまなTaskから呼ばれることを想定しているため、自分を呼んだTaskを勝手に終了させるわけにはいけないから、かと。 moveTaskToBack()でTaskをバックグラウンドに追いやって、そのうちOSに掃除してもらう、という方法もある。こっちがAndroidの標準だ、という話もあるけど、何となく、うーん。だって、この方法だと、再起動したときに、前の状態から開始されてしまうし…。 moveTaskToBack()はあくまで「中断」であり、「終了」はやっぱり地道にfinish()していくべきだと思うの 一般的な実装としては、startActivityForResult()でchild Activityを開始し、child Activityの終了後に呼ばれるonActivityResult()で、自身もfinish()する System.exit(0)で終わらせてはゼッタイダメ。 カメラ(Android 2.1 API Level 7) AndroidManifest.xmlの記述 参考 プログラマのネタ帳 uses-permission android name="android.permission.CAMERA" / uses-feature android name="android.hardware.camera" / uses-feature android name="android.hardware.camera.autofocus" / uses-feature android name="android.hardware.camera.flash" / uses-permissionで、カメラ利用の許可が必要であることを宣言し、残りの3つでカメラ、オートフォーカス、フラッシュの機能を使用することを宣言します。 また、Activityの属性に下記を追加。 android screenOrientation="landscape" android theme="@android style/Theme.NoTitleBar.Fullscreen" screenOrientationの設定は、なんか、カメラは水平でしか使えないらしいため…。 themeの設定は、アプリをフルスクリーン表示にするため。カメラアプリは基本的にフルスクリーン。 MediaStore.Images.Media.insertImage()で保存すると画質が落ちる 参考 日本Androidの会 画像を加工しない場合は、生成されたjpegデータをそのまま保存する。 // Camera#takePicture()の第3引数に渡す、コールバックオブジェクト private Camera.PictureCallback pictureListener = new Camera.PictureCallback() { public void onPictureTaken(byte[] data, Camera camera) { try { insertImageToMediaStore(data); } catch (IOException e) { throw new RuntimeException(e); } //後処理を記述 } }; // dataに格納されたjpegデータを保存 private void insertImageToMediaStore(byte[] data) throws IOException { ContentResolver resolver = getContentResolver(); ContentValues values = new ContentValues(); values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg"); values.put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis()); Uri uri = resolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values); ByteArrayInputStream in = new ByteArrayInputStream(data); try { int size; final int BUFFER_SIZE = 8192; byte[] buffer = new byte[BUFFER_SIZE]; BufferedOutputStream out = new BufferedOutputStream(resolver.openOutputStream(uri)); try { while ((size = in.read(buffer, 0, buffer.length)) 0) { out.write(buffer, 0, size); } out.flush(); } finally { out.close(); } } finally { in.close(); } } 画像を加工して保存 参考 Androidのあ~ん rTAKI0329's android ブログ グロブ(OutOfMemoryで落ちる件) なんか、下の方法みたいに、カメラの撮影サイズでBitmapの別インスタンスを生成すると、メモリ不足で落ちるっぽいぞ…。エミュレーション環境では普通に動くけど、実機でカメラ撮影後に突然落ちるような場合は原因の一つとして疑ってみてもいいかも コールバックメソッドに渡されるjpegデータをBitmapに変換して、Canvasで描画をする。その後、Bitmapをjpegで保存する。 jpeg→ビットマップ→jpegの変換を行うので、画質が落ちたり、ファイルサイズが増えたり…。 BitmapFactory.decodeByteArray()で作るBitmapがimmutableなため、copy()でmutableなBitmapを再作成する。API Level 11なら、decodeByteArray()のオプションでmutableなBitmapを直接作れるかも? // Camera#takePicture()の第3引数に渡す、コールバックオブジェクト private Camera.PictureCallback pictureListener = new Camera.PictureCallback() { public void onPictureTaken(byte[] data, Camera camera) { Bitmap orgBmp = BitmapFactory.decodeByteArray(data, 0, data.length); Bitmap bmp = orgBmp.copy(Bitmap.Config.ARGB_8888, true); Canvas canvas = new Canvas(bmp); // canvasで描画 try { insertImageToMediaStore(bmp); } catch (IOException e) { throw new RuntimeException(e); } camera.startPreview(); } }; // Bitmapをjpegで保存 private void insertImageToMediaStore(Bitmap bmp) throws IOException { ContentResolver resolver = getContentResolver(); ContentValues values = new ContentValues(); values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg"); values.put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis()); Uri uri = resolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values); BufferedOutputStream out = new BufferedOutputStream(resolver.openOutputStream(uri)); try { bmp.compress(Bitmap.CompressFormat.JPEG, 100, out); out.flush(); } finally { out.close(); } } GPSとジオコーディング(Android 2.1 API Level 7) LocationManagerを取得する。 LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); onLocationChanged()が呼ばれなくなる 参考 A Day In The Life LocationManager#removeUpdates()を呼ばずにActivityを終了させると、次回起動時にonLocationChanged()が呼ばれなくなるらしいです。必ず呼びましょう。 配布と署名 アプリケーションはapkファイルにパッケージングして配布する。 署名付きapkファイルじゃないと、端末にインストールされません。 署名のためのkeytool使用法 参考 Android Developers keyalgで指定するアルゴリズムはDSAとRSAがサポートされているらしい。通常はRSAにしておきましょう。 keysizeについては2048以上を推奨とされています。 validityで指定する有効期限については、10000日以上を推奨されています。 ということで、推奨されるkeytoolのオプションは keytool -genkey -v -keystore [keystoreファイル名] -alias [エイリアス] -keyalg RSA -keysize 2048 -validity 10000 1つのkeystoreに対して、複数の鍵を生成できる。keystoreの中で、鍵を識別するためにエイリアスを用いる。 なので例えば、keystoreファイル名はワークスペース名、エイリアスはプロジェクト名(=アプリケーション名)、みたいな感じにすると良い(あくまで例)。 keytool -genkey -v -keystore workspace.keystore -alias app1 -keyalg RSA -keysize 2048 -validity 10000 keytool -genkey -v -keystore workspace.keystore -alias app2 -keyalg RSA -keysize 2048 -validity 10000 keystoreファイルやパスワードは失くしたり忘れたりしないようにね あれ、keytoolいらなくね?(ADT Plugin for Eclipseがあれば) apkを作成したいアプリのプロジェクトのルートのコンテキストメニューから、[Export...]→[Android]-[Export Android Application]を選択する。 [Project Checks]で、何もエラーが無いことを確認して[Next ] [Keystore selection]では、最初にkeystoreファイルを作る場合は[Create new keystore]を選択[Location]には、keystoreファイルのフルパスを入力失くさないように、ワークスペース内に、keystoreファイル格納用のプロジェクトを作成し、そこに作成すると良いかも。 [Password]と[Confirm]には、keystoreファイルにアクセスするためのパスワードを入力する。 [Key Creation]では、下記を入力[Alias]には鍵のエイリアスを入力。まぁ普通はアプリケーション名 [Password]と[Confirm]には、鍵にアクセスするためのパスワードを入力する。 [Validity]には年を入力するので注意。推奨は25年以上です。 [First and Last Name]から[Country Code (XX)]については、どれか1つにでも入力すればOK。 [Destination and key/certificate checks]では、下記を入力[Destination APK file]に、出力するapkファイルをフルパスで入力。 あらまぁ簡単
https://w.atwiki.jp/kobapan/pages/192.html
Android/Android SDK のインストール Android/Debian Linux 6.0.7 (squeeze) に android-sdk_r22.0.5 開発環境を構築 Android/Desire HD 001HT の SIMロック解除 (Linux版) Android/adb shell の使い方 Android/sdcardをadb経由でフルバックアップするbashスクリプト Android/GitHubとAndroid(Terminal-IDE) Android/Androidのシェルをbashに変更 Android/スマートフォン実機デバッグ JSConsole Android/ユーザーエージェントでCSSを切り替え-javascript利用 Android/様々な画面サイズのスマホに対応する為に
https://w.atwiki.jp/niflheimr/pages/4.html
Androidエミュレータについて気になる記事をまとめてみました。 Genymotion 超高速なAndroidエミュレータ「Genymotion」を試す | TeraDas-テラダス - 2015.1.6 【追記アリ】Genymotion – PCでAndroidを起動してKindleも読める♪ インストールから「Google Play」導入方法までまとめ | mogi2fruitsどっとねっと - 2015.1.22 【Androidエミュ】Genymotion☆3 - 2015.1.20 / 2ch andy だでがんの記憶 androidエミュレータの「andy」を試してみました。[PCでスマホアプリ] - 2015.3.4 BlueStacksのように意味の分からないアプリが大量にインストールされていて初期操作が良く分からないとかWindroyのように動作するアプリと動作しないアプリが明確に存在するという程酷い訳では、無いみたいです。 Windroy WindowsでAndroidのアプリを動かす「Windroy」を使ってみる | お部屋でモバイル 軽くてさくさく動作しますが、CPUにARMを前提としているアプリは動作しないようです。 紹介 Windows上で動くAndroidのエミュレーターまとめ【アンドロイドアプリ開発・デバッグ】 - NAVER まとめ - 2014.11.24 [スマートフォン] パソコンで使える、無料のAndroidエミュレーター一覧:Windows向け | Ouka Studio - 2014.8.28 すでに、大半のゲームアプリがチート対策(不正対策)としてエミュレーターからは使えなくしているので、導入してももうあまり意味がない。 労力を考えると、素直に格安タブレットでも買って、そちらを使ったほうがよほど建設的。
https://w.atwiki.jp/derax7/pages/18.html
Android クリックイベント Button start = (Button) findViewById(R.id.start); start.setOnClickListener(new OnClickListener() { public void onClick(View v) { //処理 } }); 状態保持 // ハイスコア読み込み SharedPreferences pref; pref = this.getSharedPreferences("PreferencesEx", Activity.MODE_PRIVATE); int stage = pref.getInt("stage", 0); // ハイスコアの書き込み pref = getContext().getSharedPreferences( "PreferencesEx", Activity.MODE_PRIVATE); SharedPreferences.Editor editor = pref.edit(); editor.putInt("stage", level); editor.commit(); isFinishing()で終了状態取得 isFinishing()を利用すると、Activityの終了状態を判別できる 画面遷移の種類 -Intentを飛ばした場合 false -ホームボタンを押した場合 false -戻るボタンを押した場合 true Androidで音を鳴らす。[SoundPool編] SoundPoolクラスの場合、基本は下記の3処理。 ①SoundPoolを new して、 ②音声ファイル読み込んで、 ③再生する SoundPool soundPool = new SoundPool(5,AudioManager.STREAM_MUSIC, 0); // ① int soundID = soundPool.load(context, R.raw.lalala, 1); // ② soundPool.play(soundID, 1.0F, 1.0F, 1, 0, 1.0F); // ③ 【①の補足】 public SoundPool (int maxStreams, int streamType, int srcQuality) 引数: maxStreams … このSoundPoolオブジェクトで同時に扱う音声(Stream)の最大数 streamType … 音声(stream)の種類。 AudioManagerクラスに定義されている srcQuality … サンプルレートの質。(現在はまだ未使用。 0 を使えとのこと) 返り値: 成功なら、SoundPoolオブジェクト 失敗なら、null 【②の補足】 音声ファイルは、res/raw/lalala.ogg に設置したという想定。ResourceIDは R.raw.lalala になる。ここから想像できると思うが、同フォルダに lalala.wav や lalala.mp3 を設置しても区別がつかない。 ちなみに、音声ファイルを安定再生するためには oggファイルが良いとのこと。 public int load (Context context, int resId, int priority) 引数: context … コンテキスト resId … 音声ファイルのリソースID priority … 優先度サンプルレートの質。(現在はまだ未使用。将来互換性のため 1 を使え) 返り値: sound ID (再生時に使用) 【③の補足】 public final int play (int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate) 引数: soundID … load()メソッドで返される soundID leftVolume … 音量[左] (範囲:0.0~1.0) rightVolume … 音量[右] (範囲:0.0~1.0) priority … ストリーム優先度 (0 = 優先度最低) loop … ループの回数 (0 = ループ無し、-1 = 無限ループ) rate … 再生レート (1.0 = 標準の再生, 範囲:0.5~2.0) 返値 成功なら、streamID(≠0) 失敗なら、0 IntentへのExtra付加 intent.putExtra("hoge", String s); getIntent().getExtras().getString("hoge"); drawableからbitmap変換 Resources res = this.getResources(); // 画像の読み込み Bitmap bm = BitmapFactory.decodeResource(res, R.drawable.blue); Intent時のタスクについて マニフェストでアクティビティに以下のオプションを追加すると、シングルタスク(新タスクを別タスクとして記憶せず、自身に積み重ねる)モードになる。HOME画面等に設定。 android launchMode="singleTask" アイコンの作成 http //android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html Spinnerの初期値設定 spinner.setSelection(0); プログレスダイアログ progressDialog = new ProgressDialog(CoordinateActivity.this); progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); progressDialog.setMessage("処理を実行中です..."); progressDialog.setCancelable(true); progressDialog.show(); (・・・処理・・・) progressDialog.dismiss(); ダイアログのカスタム OnCreateDialog(int id){・・・}内でレイアウト等の適用ができる。ダイアログ生成前に呼び出され、returnでダイアログを返してやる ボタンへのクリックリスナー追加 (Button)btn.setOnClickListener(new OnClickListener() { public void onClick(View v) { Intent intent = new Intent(GalleryActivity.this, Main.class); startActivity(intent); } }); エラー関連 以下のエラーがでた時はどうやらメモリリークっぽい。 端末再起動で直るけど、リーク箇所の特定をしたほうがよさそう Failed to install XXX.apk on device HT0B8RX02778 Too many open files 【View】子Viewの追加&削除 追加:view.addView(child); 削除;view.removeView(child); 全削除:view.removeAllViews(); カメラにIntentを飛ばして起動 // Intent for Camera Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(i, REQUEST_CODE_CAMERA); 保存先はExtraで指定 File tmpPict = new File(Environment.getExternalStorageDirectory(), "/hogehoge/" + System.currentTimeMillis() + ".jpg"); intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(tmpPict)); 結果をActivityResultで受け取り処理。 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_CODE_CAMERA) { 【View】layout.xmlの読み込み setContentView(R.layout.main); これは View v = this.getLayoutInflater().inflate(R.layout.main, null); setContentView(v) と置き換えられる(→addView()などに) 端末画面サイズ取得 WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE); Display display = wm.getDefaultDisplay(); Log.d("display", "w " + display.getWidth()); Log.d("display", "h " + display.getHeight()); ロケールの取得 Locale locale = Locale.getDefault(); Log.v("ロケールは", locale.toString()); 以下のようにロケール別に分岐できる if (locale.equals(Locale.JAPAN)) { ・・・・・ } 画面遷移 intentを飛ばして画面遷移 Intent intent = new Intent(this.context, 遷移先.class); startActivity(intent); ※manifestへのactivityの追加を忘れないこと! 【View】idから呼び出し TextView textViewData = (TextView)findViewById(R.id.hoge); textViewData.setText("hogehoge"); onClick()内でのボタン選別 @Override public void onClick(View v) { switch (v.getId()) { case R.id.button_animation Intent intent = new Intent(this, Animation.class); startActivity(intent); break; case R.id.button_sub Intent intent2 = new Intent(this, Sub.class); startActivity(intent2); break; default break; } } SharedPreference云々 SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(this); Editor ed = SP.edit(); AdMob 最近仕様が変わったらしい AdMob導入の注意点 アニメーション private Handler myHandler = new Handler() { @Override public void handleMessage(Message msg) { if (isAttached) { // 移動処理 move(); // 再描画 invalidate(); sendEmptyMessageDelayed(0, DELAY_MILLIS); } } }; http //www.adamrocker.com/blog/181/android_animation.html
https://w.atwiki.jp/cappu/pages/30.html
Android 1.5 環境構築 リンク Android developer login Android developer Home Android 1.5 SDKインストール方法 android-sdk-windows-1.1_r1.zipをダウンロード後、 sdk /tools/ にpathを通す Android 1.5 SDKへアップデート方法 勉強方法 サンプル ApiDemos をEclipseプロジェクトにインポートする方法 サンプルアプリのリポジトリ svn checkout http //apps-for-android.googlecode.com/svn/trunk/ apps-for-android-read-only メモ 画面遷移 opengl ES SDCard OptionsMenuの作成方法 リンク Google Nexus One 3Dベンチマーク&UIツアー
https://w.atwiki.jp/droid/pages/55.html
AIDE - Android Java IDE(無料) http //androider.jp/a/e68d0273ccc06b30/
https://w.atwiki.jp/anddoid/pages/41.html
android hint 要素 関連タグ 使用例 android hint="test" android hint="@string/hello_world"
https://w.atwiki.jp/anddoid/pages/51.html
android paddingBottom 要素 サイズ指定 関連タグ 使用例 android paddingBottom="10dp"
https://w.atwiki.jp/redcloud/pages/13.html
目次 目次 SDK 1.6 SDK導入 Eclipse ADT導入 Eclipse 3.4の場合 Eclipse 3.5の場合 仮想マシンAVD作成 SDK 2.0 SDK導入 Eclipse ADT導入 Eclipse 3.5の場合 add-ons ファイルの取得 仮想マシンAVD作成 ツール adb adb devices 接続デバイス確認 adb shell コンソール接続 adb install アプリインストール adb push ファイル転送 開発 Eclipse ADTでHello World SDK1.5ベース SDK1.6ベース SDK2.0ベース Map使用アプリ ステータスバー使用アプリ いじる HT-03A 道化 カスタムROM導入 読書メモ お勉強 リンク SDK 1.6 SDK導入 ダウンロードここから android-sdk-windows-1.6_r1.zip をダウンロード C \local\android-sdk-windows-1.6_r1 に解凍 PATH環境変数に、 上記解凍先フォルダ \tools を追加 Eclipse ADT導入 Eclipse 3.4の場合 eclipseを起動して、[ヘルプ]- [ソフトウェアの更新]で[使用可能なソフトウェア]タブを選択し、[サイトの追加]を押下 https //dl-ssl.google.com/android/eclipse/ を追加して、正常に追加できていることを確認 ※2009/11/3時点でバージョンは0.9.4 追加したサイトにチェックを入れ[インストール]押下 ※上記方法でうまくいかなければ。。。↓ ※実際に "No repository found containing org.apache.oro/osgi.bundle/2.0.8.v200903061218" というエラーが発生した! ダウンロードここから ADT-0.9.3.zip をダウンロード eclipseを起動して、[ヘルプ]- [ソフトウェアの更新]で[使用可能なソフトウェア]タブを選択し、[サイトの追加]を押下 [アーカイブ]を押下し、ダウンロードしてきたzipを指定、正常に追加される事を確認 追加したサイトにチェックを入れ[インストール]押下 ※アップデートの場合は下記のようなダイアログが出る ※これでもうまくいかず。。。Eclipseを3.5にするしかなさそう Eclipse 3.5の場合 eclipseを起動して、[ヘルプ]- [新規ソフトウェアのインストール]- [追加]で、https //dl-ssl.google.com/android/eclipse/ を追加 使用可能なソフトウェアの画面に戻って、[作業対象]プルダウンで追加したandroidのURLを選択。ソフトウェア表示欄にDeveloper Toolsが表示される事を確認 全てにチェックを入れて[次へ]。後はインストールをひたすら進める。(警告が出てもOKする) [ウインドウ]- [設定]- [Android]で、[SDKロケーション]にインストールしたAndroidSDKのフォルダを指定 仮想マシンAVD作成 コマンドプロンプトを開いて下記を実行 android create avd -n SDK16 -t 4 -c 128M エミュレータ起動確認 emulator @SDK16 SDK 2.0 ※SDK1.6からのアップデートを前提とした手順を記述する SDK導入 ダウンロードここから C \local\android-sdk-windows に解凍 PATH環境変数に、 上記解凍先フォルダ \tools を追加 Eclipse ADT導入 Eclipse 3.5の場合 eclipseを起動して、[ヘルプ]- [新規ソフトウェアのインストール]- [追加]で、https //dl-ssl.google.com/android/eclipse/ を追加 使用可能なソフトウェアの画面に戻って、[作業対象]プルダウンで追加したandroidのURLを選択。ソフトウェア表示欄にDeveloper Toolsが表示される事を確認 全てにチェックを入れて[次へ]。後はインストールをひたすら進める。(警告が出てもOKする) [ウインドウ]- [設定]- [Android]で、[SDKロケーション]にインストールしたAndroidSDKのフォルダを指定 add-ons ファイルの取得 eclipseを起動して、[ウインドウ]- [Android SDK and AVD Manager] [Available Packages]のリポジトリを展開し、必要な物にチェックを入れ[Install Selected]- [Accept All]にチェックを入れ[Install Accepted] 仮想マシンAVD作成 eclipseを起動して、[ウインドウ]- [Android SDK and AVD Manager] [Virtual Devices]を選択して[新規]を押下して Create new AVD画面を開く Maps APIをSDK1.5ベースで使用できる「Google APIs API Level 3」を使用する前提で。。。 名前…任意の名前を入力 ターゲット…"Google APIs(Google Inc) - API Level 3" SD Card…サイズ=任意(とりあえず128 MiB) Skin…Built-In=任意(とりあえずDefault) SDK1.6ベースの「API Level 4」を使用する前提で。。。 ターゲット…"Android 1.6 - API Level 4" SDK2.0ベースの「API Level 5」を使用する前提で。。。 ターゲット…"Android 2.0 - API Level 5" 以上を入力して[Create AVD] ツール adb adb devices 接続デバイス確認 PCに接続中のデバイス(エミュレータも含む)を表示する adb devices List of devices attached HT********** device ←実機 emulator-**** device ←エミュレータ adb shell コンソール接続 adb (-s serial number ) shell adb install アプリインストール apkファイル形式のアプリを接続中のデバイスにインストールする adb (-s serial number ) install c \hoge.apk adb push ファイル転送 SDカードにPC上のファイルを転送する adb (-s serial number ) push "c \hoge.txt" /sdcard/hoge.txt 開発 Eclipse ADTでHello World SDK1.5ベース SDK1.6ベース SDK2.0ベース Map使用アプリ TODO ステータスバー使用アプリ TODO いじる HT-03A 道化 このリンクを、Gmailからorブラウザから起動 ファイルマネージャ(AndExplorerなど)で /sdcard/download を開き(※DolphinブラウザでDLした場合はここだった)、ダウンロードしたapkファイルを選択 TODO カスタムROM導入 TODO 読書メモ Android/読書メモ お勉強 Android/お勉強 リンク TODO
https://w.atwiki.jp/android2chbrowser/pages/31.html
■Gikolet 4 Android ウェブページ http //gikolet.org/android ここを編集 最近のリンク元 申し訳ありませんが、recent_page_ref プラグインは提供を終了し、ご利用いただけません。